Inter-frame video filter having selective linear and non-linear transfer characteristics as function of inter-frame differences

ABSTRACT

Temporarily filtered video samples are formed as the sum of a previous frame output sample and a non-linear function of the difference between current and previous samples. The function is non-linear only for absolute values of differences less than 50% (preferably 10%) of the maximum range of the difference, and a smaller lookup table is used for implementing the non-linear function than would otherwise be the case.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention concerns video filters of the nonlinear temporaltype, particularly, but not exclusively, for use in video codingsystems.

2. Related Art

Nonlinear inter-frame digital filters are utilized to reduce noise whileminimizing the blurring of moving objects or scene changes. In effect, agreater degree of filtering is introduced for small inter-framedifferences than for larger ones.

BRIEF SUMMARY OF THE INVENTION

This invention provides look-up memory savings by restricting thenon-linear filter characteristic to a small fixed portion of the filtertransfer characteristic.

BRIEF DESCRIPTION OF THE DRAWINGS

Some embodiments of the invention will now be described, by way ofexample, with reference to the accompanying drawings, in which:

FIG. 1 is a block diagram of a filter;

FIG. 2 illustrates a known characteristic for the nonlinear lookup unit4 FIG. 1;

FIG. 3 illustrates a modified characteristic in accordance with one formof the present invention;

FIG. 4 is a block diagram of one form of lookup unit 4 in accordancewith the invention; and

FIG. 5 is a block diagram of an alternative form of lookup unit 4.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS

A nonlinear temporal filter for digitally coded video signals has(FIG. 1) a video input 1. Each picture sample S is supplied to asubtractor 2 which takes the difference D between the new sample and thecorresponding "previous picture" sample P from a frame store 3. Thedifference passes through a lookup unit 4 which forms a nonlinearfunction D'=f(D). The modified difference D' is added in an adder 5 tothe previous picture sample P and the resulting filtered new sample S'is forwarded to an output 6 and also written into the frame store 3 toform the new previous picture sample for the next frame.

    Thus S'=P+D'=P+f(D)=P+f(S-P).

Hence, if f(D)=D then S'=S and no filtering occurs. If 0<[f(D)/D]<1where f(D) has the same sign as D, then some filtering takes place.

The object of this temporal filtering is to reduce noise; however it hasthe disadvantage of causing blurring of moving objects on scene changes.Where the difference between the old and new samples is large, this islikely to be caused by changes in picture content, whilst a smalldifference is more likely to be caused by noise. Therefore the lookupunit 4 is given a nonlinear characteristic in order to effect a greaterdegree of filtering for small differences than for large ones. A typicalcharacteristic curve is shown in FIG. 2, with a slope less than unityfor small D, and asymptotic to the line D'=D.

Assuming a resolution of 8 bits/sample, the difference D (and modifieddifference D') has a range of -255 to +255, and therefore a memory of512×9 bit capacity is required for the lookup table. Although this isnot a large memory bu current standards, nevertheless for an integratedcircuit video coder implementation where silicon area may be at apremium, it is desirable to reduce this. Accordingly, it is arrangedthat the characteristic is nonlinear for values of D less than 50% ofits maximum absolute value, or more preferably less than 10%, and linearwith unity slope for greater values.

For example, the characteristic in FIG. 3 has a unity slope for absolutevalues of D greater than or equal to 16. This can be implemented by thelookup unit shown in FIG. 4, where the four least significant bits of Dform the address input to a read-only memory 10 having 16 locations eachcontaining a four-bit word representing half of the characteristicdepicted in the central region of FIG. 3. The data output from thememory 10 forms the four least significant bits of an 8-bit word (whosefour most significant bits are always zero) forming one input to anelectronic change-over switch or data selector 11. The other input tothe selector 11 is the input word D (without its sign bit SGN).

The four most significant bits of D are connected via an OR gate 12 tothe control input of the selector 11 so that whenever one of those bitsis nonzero (i.e. /D/≧16) the selector passes the data input D directlyto the output D'; otherwise the output is the output of the lookup table10. The sign bit of the output D' is of course the sign bit of the inputD, unmodified. This structure assumes a sign-bit plus magnituderepresentation of negative values of D. In practice, a twos-complementrepresentation is more convenient for implementing the addition andsubtraction, in which case the more complex arrangement shown in FIG. 5would be appropriate It differs from FIG. 4 in that (1) the read-onlymemory 10 covers a range from -16 to +15, with its additional addressline fed from the sign bit of D, and (2) the range detector comprises anOR gate 14 which produces a logic zero output when the four mostsignificant bits of D, and the sign bit are zero (i.e. D<16) a NAND gate15 which produces a logic zero when these five bits are one (i.e.D>-17), and an AND gate 16 which produces an active low output when theoutput of one of the gates 14, 15 is zero.

We claim:
 1. A filter for filtering digitally coded video signalscomprising:means for forming the difference (D) between each sample ofan input signal (S) and the filter output corresponding to an earlierframe of the video signal (P); and means for forming an output sample(S') by adding said filter output corresponding to an earlier frame ofthe video signal (P) to a non-linear function (f(D)) of the difference(D); the non-linear function (f(D)) including a non-linear portion forabsolute values of the difference (D) less than a threshold and a linearportion for absolute values of the difference (D) greater than thethreshold, said threshold being equal to 50% or less of the maximumpossible absolute value of the difference (D); the filter includingnon-linear processing means having: a memory for storing values of thenon-linear function (f(D)) corresponding to absolute values ofdifference (D) less than the threshold; and switching means responsiveto each absolute value of difference (D) to select for output either theunmodified difference (D) or the corresponding stored value of saidnon-linear function (f(D)).
 2. A filter according to claim 1 in whichthe threshold is 10% or less of the maximum possible absolute value ofthe difference (D).
 3. An inter-frame digital video signal filter havingmeans for forming the inter-frame difference between each sample of aninput video signal and a filter output corresponding to an earlier frameof the video signal, said filter comprising:a first circuit for passingunaltered input video signals having an inter-frame difference above athreshold value; a second circuit connected to said first circuit forprocessing predetermined least significant bits of input video signalshaving an inter-frame difference below said threshold value; and aswitch connected to said first and second circuits for effecting thefilter output in dependence upon the value of the inter-frame differencebetween said video signals being above or below said threshold.
 4. Aninter-frame digital video signal filter as in claim 3 wherein saidthreshold is 50% or less of the maximum possible absolute value of saidinter-frame difference.
 5. An inter-frame digital video signal filter asin claim 3 wherein said threshold is 10% or less of the maximum possibleabsolute value of said inter-frame difference.
 6. An inter-frame digitalvideo signal filter having means for forming the inter-frame differencebetween each sample of an input video signal and a filter outputcorresponding to an earlier frame of the video signal, said filtercomprising:a first circuit for conveying digital video signals; anon-linear digital signal processing circuit connected to processpredetermined least significant bits of said digital video signals; anda switch connected to select as the filter output either said digitalvideo signals of non-linearly processed versions of those signalsincluding outputs from the non-linear processing circuit in dependenceon the value of the inter-frame video signal difference.